package com.example.take_out_order.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.example.take_out_order.common.lang.dto.OrdersPageQueryDTO;
import com.example.take_out_order.common.lang.vo.OrderVO;
import com.example.take_out_order.entity.Orders;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.List;

/**
 * <p>
 * 订单表 Mapper 接口
 * </p>
 *
 * @author FZ
 * @since 2024-07-09
 */
@Mapper
public interface OrdersMapper extends BaseMapper<Orders> {

    /**
     * 查询订单
     * @param page
     * @param source
     * @return
     */
    Page<OrderVO> conditionSearch(@Param("page")Page<OrderVO> page,
                                  @Param("source") OrdersPageQueryDTO source);

    /**
     * 获取订单详情
     * @param id
     */
    OrderVO detail(@Param("id") String id);


    /**
     * 查询营业额
     * @param begin
     * @param end
     * @return
     */
    Double sumByMap(LocalDateTime begin,LocalDateTime end);

    /**
     *
     * @param begin
     * @param status
     */
    Integer countByMap(@Param("begin") Object begin,
                       @Param("status") Object status);

}
